package cn.ylz.ylmall.account.dao.persist.repository;

import cn.ylz.ylmall.account.pojo.entity.Role;
import cn.ylz.ylmall.account.pojo.vo.PageData;
import cn.ylz.ylmall.account.pojo.vo.RoleListVO;
import cn.ylz.ylmall.account.pojo.vo.RoleStandardVO;
import cn.ylz.ylmall.account.pojo.vo.UserPermissionVO;

import java.util.List;

public interface IRoleRepository {
    int countByName(String name);

    int insert(Role role);

    RoleStandardVO getStandardById(Long id);

    int delete(Long id);

    int update(Role role);

    PageData<RoleListVO> list(Integer pageNum, Integer pageSize);

    List<UserPermissionVO> getPermissionByRoleId(Long roleId);
}
